﻿using System;
using System.Collections.Generic;
using System.Collections;
using System.Data;
using System.Text;
using System.Reflection;
using System.Text.RegularExpressions;
using BP.DA;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using System.Text.Json.Nodes;

namespace BP.Tools
{

    public class AjaxResult: Dictionary<string,object>
    {
        /**
         * 初始化一个新创建的 Message 对象
         */
        public AjaxResult()
        {
        }

        /**
         * 返回错误消息
         * 
         * @return 错误消息
         */
        public static AjaxResult error()
        {
            return error(500, "操作失败");
        }

        /**
         * 返回错误消息
         * 
         * @param msg 内容
         * @return 错误消息
         */
        public static AjaxResult error(string msg)
        {
            return error(500, msg);
        }

        /**
         * 返回错误消息
         * 
         * @param code 错误码
         * @param msg 内容
         * @return 错误消息
         */
        public static AjaxResult error(int code, string msg)
        {
            AjaxResult json = new AjaxResult();
            json.Add("code", code);
            json.Add("msg", msg);
            return json;
        }

        /**
         * 返回成功消息
         * 
         * @param msg 内容
         * @return 成功消息
         */
        public static AjaxResult success(string msg)
        {
            AjaxResult json = new AjaxResult();
            json.Add("msg", msg);
            json.Add("code", 200);
            return json;
        }

        /**
         * 返回成功消息
         * 
         * @return 成功消息
         */
        public static AjaxResult success()
        {
            return AjaxResult.success("操作成功");
        }

        public static AjaxResult successData(int code, Object value)
        {
            AjaxResult json = new AjaxResult();
            json.Add("code", code);
            json.Add("data", value);
            return json;
        }


        /**
         * 返回成功消息
         * 
         * @param key 键值
         * @param value 内容
         * @return 成功消息
         */
      /*  public override AjaxResult Add(string key, object value)
        {
            super.put(key, value);
            return this;
        }*/
    }
}
